100 GOSUB250:DIMB%(232),C%(232),N$(232),T%(232),T$(4) 110 Z=PEEK(0):X=45:V=256:IFZ=76THENX=42:GOTO120 115 IFPEEK(48)=4THENX=4624 120 M=PEEK(X)+PEEK(X+1)*V-362:D=M-V 130 Z=INT(D/V):POKEM+5,Z:POKEM+230,Z 140 P=D-20:BD=P-2:Z=150:IFX<>42THEN300 150 POKEM+94,Z:POKEM+258,Z:POKEM+298,Z 160 POKEM+300,Z:POKEM+311,Z:POKEM+341,Z:POKEM+348,Z:GOTO300 170 INPUT#4,E,E$,X,A:GOTO190 180 INPUT#6,E,E$,X,A 190 IFETHENPRINT:PRINTE;E$;X;A 200 IFE=0THENE=(191ANDST):IFETHENPRINT" *ST*";E 210 IFEANDH=0THENSTOP 220 RETURN 230 INPUT" DRIVE ? 0[157][157][157]";A:IFA*A<>ATHEN230 240 D$=CHR$(A+48):RETURN 250 PRINT"[147] UNIVERSAL DISK-FILE COPY":RETURN 260 PRINT" ANOTHER "X$" DISK READY ? N[157][157][157]"; 270 INPUTX$:IFLEFT$(X$,1)<>"Y"THENEND 280 RETURN 290 DATA12,50,119,0,*,SEQ,PRG,USR,REL 300 BB$=CHR$(160)+CHR$(160):SB$=BB$+BB$+BB$+BB$+BB$+BB$+BB$+BB$ 310 Z$=CHR$(0):BB$=" ":B$=BB$+BB$+BB$:C=15 320 PRINT" SHALL I CHANGE A UNIT NR ? N[157][157][157]"; 330 INPUTD$:IFLEFT$(D$,1)<>"Y"THEN450 340 INPUT" OLD UNIT NR ? 8[157][157][157]";Z:IFZ<8ORZ>15THENPRINT"[145]";:GOTO340 350 INPUT" NEW UNIT NR ? 9[157][157][157]";N:IFN<8ORN>15THENPRINT"[145]";:GOTO350 360 PRINT" TURN OFF ALL UNITS BUT";Z 370 PRINT" THEN PRESS SPACE-BAR" 380 GETX$:IFX$<>" "THEN380 390 OPEN1,Z,C:D$=CHR$(Z+32):E$=CHR$(Z+64) 400 READA:IFA=0THENPRINT" * UNKNOWN UNIT TYPE *":CLOSE1:END 410 PRINT#1,"M-R"CHR$(A)Z$:GET#1,X$:IFX$<>D$GOTO400 420 PRINT#1,"M-R"CHR$(A+1)Z$:GET#1,X$:IFX$<>E$GOTO400 430 PRINT#1,"M-W"CHR$(A)Z$CHR$(2)CHR$(N+32)CHR$(N+64) 440 CLOSE1:GOSUB250:RESTORE 450 FORJ=1TO4:READX:NEXT:FORJ=0TO4:READT$(J):NEXT 460 INPUT" COPY FROM UNIT ? 8[157][157][157]";F:GOSUB230:F$=D$ 470 INPUT" COPY TO UNIT ? 9[157][157][157]";T:GOSUB230:T$=D$:IFF$=T$ANDF=TTHENRUN 480 PRINT"[147] NAME-SEARCH PATTERN":INPUT" ? *[157][157][157]";X$ 490 X$=CHR$(8)+Z$+Z$+LEFT$(X$+SB$,16)+Z$ 500 FORJ=0TO19:POKEP+J,ASC(MID$(X$,J+1)):NEXT 510 PRINT" PRESS 'Y' OR 'N' KEY TO SELECT" 520 PRINT" THE FILES YOU WANT COPIED:":N=0:Z=0:E=0 530 OPEN4,F,C,"I"+F$:GOSUB170:OPEN3,F,3,"$"+F$:GOSUB170 540 SYSM:N$="":X=PEEK(D):IFX=0THEN660 550 FORJ=3TO18:A=PEEK(D+J):IFA=160THENJ=18:NEXT:GOTO570 560 N$=N$+CHR$(A):NEXT 570 X=X-128:B=PEEK(D+28)+PEEK(D+29)*V 580 PRINTB;TAB(6)N$TAB(24)T$(X) 590 GETX$:IFZTHENIFX$=""THEN630 600 IFX$="Y"ORX$="N"THENZ=0:E=ASC(X$)-78:GOTO630 610 IFX$=CHR$(13)THENZ=1:GOTO630 620 GOTO590 630 IFE=0THENPRINT"[145]"B$"[145]":GOTO650 640 N=N+1:B%(N)=B:N$(N)=N$:T%(N)=X:C%(N)=PEEK(D+21) 650 IFST=0ANDN<232GOTO540 660 CLOSE3:CLOSE4:IFNTHEN680 670 PRINT" * NO FILES SELECTED *":GOTO860 680 Z=0:FORJ=1TON:IFZ=0THEN710 690 IFB>B%(J)THEN790 700 PRINT" * OUTPUT DISK FULL *":X$="OUTPUT":GOSUB260 710 PRINT" WANT TO NEW THE OUTPUT DISK ? N[157][157][157]"; 720 INPUTX$:IFLEFT$(X$,1)<>"Y"THEN750 730 PRINT" ENTER DISK-NAME, ID":INPUTX$,D$:H=1 740 OPEN6,T,C,"N"+T$+":"+X$+","+D$:GOSUB180:CLOSE6:H=0:IFETHEN710 750 OPEN6,T,C,"I"+T$:GOSUB180:OPEN1,T,0,"$"+T$+":":GOSUB180 760 FORX=1TO35:GET#1,X$:NEXT:X=ASC(X$+Z$) 770 GET#1,X$:Z=ASC(X$+Z$):B=X+Z*V:Z=1 780 GOSUB250:PRINT" ("B" BLOCKS FREE )":CLOSE1:CLOSE6:H=1:GOTO690 790 OPEN4,F,C:OPEN6,T,C:PRINTB%(J);TAB(6)N$(J)TAB(24)T$(T%(J))" "; 800 OPEN3,F,3,F$+":"+N$(J)+","+T$(T%(J)):GOSUB170:IFETHEN850 810 IFT%(J)=4THENOPEN5,T,5,T$+":"+N$(J)+",L,"+CHR$(C%(J)):GOTO830 820 OPEN5,T,5,T$+":"+N$(J)+","+T$(T%(J))+",W" 830 GOSUB180:IFETHEN850 835 GOSUB900 840 POKEP,C%(J):SYSM+220:X=PEEK(D):N$(J)="":B=B-B%(J):GOSUB180:PRINT 850 CLOSE3:CLOSE4:CLOSE5:CLOSE6:NEXTJ 860 X$="INPUT":GOSUB260:H=0:GOTO480 900 Q=B%(J):N4=INT(Q/1000):Q=Q-(N4*1000) 910 N3=INT(Q/100):Q=Q-(N3*100) 920 N2=INT(Q/10):Q=Q-(N2*10) 940 N1=Q:POKEBD,(N4*16)+N3 950 POKEBD+1,(N2*16)+N1:RETURN